2. Przestrzenny rozkład segregacji oraz zróżnicowania rasowego w hrabstwie w latach 1990-2020

2.1. Rozkład wartości wskaźnika H na poziomie obszarów spisowych dla poszczególnych lat

p1 <- ggplot(data = wayne_idx_1990) +
  geom_sf(aes(fill = H)) +
  scale_fill_gradient2(name = "Wskaźnik H", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) +
  labs(title = "1990") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p2 <- ggplot(data = wayne_idx_2000) +
  geom_sf(aes(fill = H)) +
  scale_fill_gradient2(name = "Wskaźnik H", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) +
  labs(title = "2000") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p3 <- ggplot(data = wayne_idx_2010) +
  geom_sf(aes(fill = H)) +
  scale_fill_gradient2(name = "Wskaźnik H", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) +
  labs(title = "2010") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p4 <- ggplot(data = wayne_idx_2020) +
  geom_sf(aes(fill = H)) +
  scale_fill_gradient2(name = "Wskaźnik H", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) +  # Consistent legend title
  labs(title = "2020") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

print(p1)

print(p2)

print(p3)

print(p4)

cls_color <- c("L"= "#008000", "M"= "#FFFF00", "H"= "#FF0000")

colpal <- cls_color[names(cls_color)%in%unique(wayne_idx_1990$H_cls)]

wayne_idx_1990$H_cls <- factor(wayne_idx_1990$H_cls, levels = c("H", "M", "L"))
wayne_idx_2000$H_cls <- factor(wayne_idx_2000$H_cls, levels = c("H", "M", "L"))
wayne_idx_2010$H_cls <- factor(wayne_idx_2010$H_cls, levels = c("H", "M", "L"))
wayne_idx_2020$H_cls <- factor(wayne_idx_2020$H_cls, levels = c("H", "M", "L"))

p1 <- ggplot(data = wayne_idx_1990) +
  geom_sf(aes(fill = H_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "1990", fill = "Wskaźnik H") + 
  theme_bw() + theme(
  axis.text = element_blank(),
  axis.ticks = element_blank(),
  panel.grid = element_blank())

p2 <- ggplot(data = wayne_idx_2000) +
  geom_sf(aes(fill = H_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "2000", fill = "Wskaźnik H") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  ) +
  guides(fill = 'none')

p3 <- ggplot(data = wayne_idx_2010) +
  geom_sf(aes(fill = H_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "2010", fill = "Wskaźnik H") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p4 <- ggplot(data = wayne_idx_2020) +
  geom_sf(aes(fill = H_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "2020", fill = "Wskaźnik H") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  ) + 
  guides(fill = 'none')

combined2 <- p1 + p2 + p3 + p4 + plot_layout(guides = "collect") & theme(legend.position = "right")

combined2 = combined2 + plot_annotation("Klasyfikacja wkaźnika H na poziomie obszarow spisowych")

print(combined2)

Badając przestrzenny rozkład wartości wskaźnika H można zaobserwować różnice pomiędzy częściami Hrabstwa Wayne. W 2020 roku obszarem o największym poziomie segregacji rasowej były głównie obszary spisowe znajdujące się w centrum miasta, w szczególności te w północnej części. Porównując wizualizacje dla poszczególnych lat można również zaobserwować stopniowe zmiany na obszarze w skali czasowej gdzie wyróżnia się rzadziej zaludniona południowa część badanego obszaru. Widać tam spadek poziomu segregacji rasowej na przestrzeni okresu od 1990 do 2020. Pewną tendencją spadkową wykazało się również same centrum miasta gdzie w latach 1990 i 2010 występowały obszary o maksymalnej wartości wskaźnika teorii informacji H. Najmniejszą zmiennością wykazały się obszary położone na północ od centrum miasta gdzie poziom segregacji rasowej utrzymywał się na podobnym poziomie na przestrzeni badanego okresu. Ogólnie na podstawie map rozkładu wartości wskaźnika H można stwierdzieć, że poziom segregacji rasowej na terenie Hrabstwa Wayne w latach 1990-2020 stopniowo spadał.

2.2. Rozkład wartości entropii standaryzowanej na poziomie obszarów spisowych dla poszczególnych lat

p1 <- ggplot(data = wayne_idx_1990) +
  geom_sf(aes(fill = Estd)) +
  scale_fill_gradient2(name = "Entropia Zestandaryzowana", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) + 
  labs(title = "1990") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p2 <- ggplot(data = wayne_idx_2000) +
  geom_sf(aes(fill = Estd)) +
  scale_fill_gradient2(name = "Entropia Zestandaryzowana", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) + 
  labs(title = "2000") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p3 <- ggplot(data = wayne_idx_2010) +
  geom_sf(aes(fill = Estd)) +
  scale_fill_gradient2(name = "Entropia Zestandaryzowana", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) + 
  labs(title = "2010") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p4 <- ggplot(data = wayne_idx_2020) +
  geom_sf(aes(fill = Estd)) +
  scale_fill_gradient2(name = "Entropia Zestandaryzowana", low = "darkgreen",mid = "yellow", high = "red",midpoint = 0.5 ,limits = c(0, 1)) +
  labs(title = "2020") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

print(p1)

print(p2)

print(p3)

print(p4)

cls_color <- c("L"= "#008000", "M"= "#FFFF00", "H"= "#FF0000")

colpal <- cls_color[names(cls_color)%in%unique(wayne_idx_1990$Estd_cls)]

wayne_idx_1990$Estd_cls <- factor(wayne_idx_1990$Estd_cls, levels = c("H", "M", "L"))
wayne_idx_2000$Estd_cls <- factor(wayne_idx_2000$Estd_cls, levels = c("H", "M", "L"))
wayne_idx_2010$Estd_cls <- factor(wayne_idx_2010$Estd_cls, levels = c("H", "M", "L"))
wayne_idx_2020$Estd_cls <- factor(wayne_idx_2020$Estd_cls, levels = c("H", "M", "L"))

p1 <- ggplot(data = wayne_idx_1990) +
  geom_sf(aes(fill = Estd_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "1990", fill = "Entropia Zestandaryzowana") + 
  theme_bw() + theme(
  axis.text = element_blank(),
  axis.ticks = element_blank(),
  panel.grid = element_blank())

p2 <- ggplot(data = wayne_idx_2000) +
  geom_sf(aes(fill = Estd_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "2000", fill = "Entropia Zestandaryzowana") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  ) +
  guides(fill = 'none')

p3 <- ggplot(data = wayne_idx_2010) +
  geom_sf(aes(fill = Estd_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "2010", fill = "Entropia Zestandaryzowana") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p4 <- ggplot(data = wayne_idx_2020) +
  geom_sf(aes(fill = Estd_cls)) +
  scale_fill_manual(values = colpal) + 
  labs(title = "2020", fill = "Entropia Zestandaryzowana") + 
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  ) + 
  guides(fill = 'none')

combined2 <- p1 + p2 + p3 + p4 + plot_layout(guides = "collect") & theme(legend.position = "right")

combined2 = combined2 + plot_annotation("Klasyfikacja entropii zestandaryzowanej na poziomie obszarow spisowych")

print(combined2)

Na podstawie przestrzennej reprezentacji poziomu entropii zestandaryzowanej dla poszczególnych obszarów spisowych Hrabstwa Wayne można zauważyć drastyczne zmiany w poziomie zróżnicowania rasowego regionu. Podczas gdy w roku 1990 niemal jedynym obszarem o dużej różnorodności rasowej było centrum miasta, z każdą następną dekadą widać jak poziom zróżnicowania rasowego na obrzeżach miasta stopniowo rośnie. Podczas gdy w samym centrum różnorodniość etniczna również wzrosła, niezwykle gwałtowną tendencją wzrostową wykazały się rzadziej zaludnione południowe obszary spisowe Hrabstwa Wayne, gdzie w 1990 roku przeważały obszary o niskim poziomie zróżnicowania rasowego natomiast w roku 2020 dorównują one w swojej wieloetniczności poziomom obserwowanym w centrum. Najmniejszą zmiennością podobnie jak w przypadku wskaźnika H wykazały się tereny na północ od głównego skupiska miejskiego.

2.3. Typy struktur rasowo-etnicznych

biv_colors = stevens.bluered()
names(biv_colors) = c("LL", "ML", "HL", "LM", "MM", "HM", "LH", "MH", "HH")

p1 <- ggplot(data = wayne_idx_1990) +
  geom_sf(aes(fill = biv_cls)) +
  scale_fill_manual(values = biv_colors) +
  labs(title = "1990", fill = "Struktura rasowo-etniczna") +
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank())

p2 <- ggplot(data = wayne_idx_2000) +
  geom_sf(aes(fill = biv_cls)) +
  scale_fill_manual(values = biv_colors) +
  labs(title = "2000", fill = "Struktura rasowo-etniczna") +
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p3 <- ggplot(data = wayne_idx_2010) +
  geom_sf(aes(fill = biv_cls)) +
  scale_fill_manual(values = biv_colors) +
  labs(title = "2010", fill = "Struktura rasowo-etniczna") +
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )

p4 <- ggplot(data = wayne_idx_2020) +
  geom_sf(aes(fill = biv_cls)) +
  scale_fill_manual(values = biv_colors) +
  labs(title = "2020", fill = "Struktura rasowo-etniczna") +
  theme_bw() + theme(
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    panel.grid = element_blank()
  )


print(p1)

print(p2)

print(p3)

print(p4)

Powyższy wykres przedstawia typy struktur rasowo etnicznych dla obszarów spisowych w Hrabstwie Wayne dla poszczególnych lat. Kategorie zostały stworzone poprzez kombinację klasyfikacji entropii zestandaryzowanej (pierwsza litera) i wzkaźnika H (druga litera): L - niski poziom, M - średni poziom, H - wysoki poziom. Na podstawie wizualizacji można zaobserwować, że podczas gdy w roku 1990 poza centrum miasta dominowały obszary o niskim zróżnicowaniu rasowym i niskiej segregacj (LL), w kolejnych latah coraz bardziej dominujące stały się obszary o średnim zróżnicowaniu i niskiej segregacj (ML). Zarówno w centrum jak i na obrzeżach miasta pojawiło się również znacznie więcej obszarów o wysokim zróżnicowaniu etnicznym i niskiej segregacji (HL). W żadnym z badanych lat nie wystąpiły natomiast obszary o wysokim poziomie segregacji i zróżnicowania rasowego. Zwłasza w pobliżu centrum pojawiło się dużo obszarów o średniej wartości obydwu wskaźników. Niezaskakująco, miejscem które wykazało się najmniejszą zmiennością w czasie są obszary znajdujące się na północny-zachód od śródmieścia.

2.4. Ilość obszarów spisowych dla poszczególnych typów w 1990 roku

table(wayne_idx_1990$biv_cls)
## 
##  HL  LH  LL  LM  ML  MM 
##   1   1 449  38 112  23

2.5. Ilość obszarów spisowych dla poszczególnych typów w 2020 roku

table(wayne_idx_2020$biv_cls)
## 
##  HL  HM  LL  LM  ML  MM 
##  40   1 225  14 305  14

2.6. Mapa zmian między rokiem 1990-2020

Mapa ta uwidacznia zmiany typów struktury rasowo-etnicznej. Została przygotowana w oprogramowaniu QGIS.

Strukturę rasowo-etniczną ludności klasyfikujemy odpowiednio:
1. Typ mało zróżnicowany (grupa dominująca powyżej 80%):
  1. • zdominowany przez białych (WL)
  2. • zdominowany przez czarnych (BL)
  3. • zdominowany przez Azjatów (AL)
  4. • zdominowany przez Latynosów (HL)
2. Typ średnio zróżnicowany (grupa dominująca 50%-80%):
  1. • zdominowany przez białych (WM)
  2. • zdominowany przez czarnych (BM)
  3. • zdominowany przez Azjatów (AM)
  4. • zdominowany przez Latynosów (HM)

3. Typ o dużym zróżnicowaniu - HD (żadna grupa nie przekracza 50%)

knitr::include_graphics("result/raport/mapa_zmian.png")

Do zmian doszło praktycznie na większości obszarów spisowych (część ludności białej bez zmian w południowej i północnej części, podobnie wiele obszarów z ludnością czarną w mieście Detroit). Na pierwszy rzut oka zauważamy spadek udziału ludności białej (z dominacji >80% WL do dominacji 50%-80% WM). Za to ludność czarna na przestrzeni lat zwiększa swój udział na przedmieściach Detroit (głównie BM→BL). Również na przedmieściach pojawił się mniejszy i większy udział Latynosów tym samym zmniejszając udział ludności białej i o dużym zróżnicowaniu (HD→HM, WM→HM). Patrząc na zachód zauważamy zmniejszenie udziału ludności białej na rzecz ludności o dużym zróżnicowaniu (WL→HD).

2.7. Macierz przejść klasyfikacji obszarów spisowych między rokiem 1990 a 2020

wayne_1990 = st_drop_geometry(wayne_1990)
wayne_1990 = select(wayne_1990, 1,'race_cls')
wayne_1990 = rename(wayne_1990, race_cls_1990 = race_cls) 

wayne_2020 = st_drop_geometry(wayne_2020)
wayne_2020 = select(wayne_2020, 1,'race_cls')
wayne_2020 = rename(wayne_2020, race_cls_2020 = race_cls) 

wayne_1990_2020 = merge(wayne_1990, wayne_2020, by = "GISJOIN")

# table(wayne_1990_2020$race_cls_1990)

# table(wayne_1990_2020$race_cls_2020)

trans_matrix = table(wayne_1990_2020$race_cls_1990, wayne_1990_2020$race_cls_2020)

# write.csv(trans_matrix, "dane\\transition_matrix.csv")

trans_matrix
##     
##       AM  BL  BM  HD  HL  HM  WL  WM
##   BL   0 153  20   1   0   0   0   0
##   BM   1  28  15  10   0   0   0   4
##   HD   0   2   1   3   1   2   0   2
##   HM   0   0   0   0   1   0   0   0
##   WL   1   7  16  48   0   0 124 139
##   WM   0  11   9   8   3   8   1   6

Macierz ta przedstawia przejścia klas z 1990r. do 2020r. Wiersz zawiera dane z 1990, zaś kolumny dla roku 2020. Przykładowo: wartość 20 (pierwszy wiersz, trzecia kolumna) oznacza, że 20 obszarów spisowych sklasyfikowanych w roku 1990 jako BL już w roku 2020 zmieniło swój typ na BM. Do największego przejścia doszło z WL do WM - 139 obszarów spisowych.

Liczba obszarów spisowych według typów w 1990r.

rowSums(trans_matrix) # dla typów w 1990
##  BL  BM  HD  HM  WL  WM 
## 174  58  11   1 335  46


Liczba obszarów spisowych według typów w 2020r.

colSums(trans_matrix) # dla typów w 2020
##  AM  BL  BM  HD  HL  HM  WL  WM 
##   2 201  61  70   5  10 125 151

Po zsumowaniu wartości w wierszach i kolumnach widzimy, że największą dominację ma ludność biała oraz czarna. Sytuacja ta nie zmienia się w 2020, lecz udział WL spadł na rzecz WM, HD, BM.

4. Wykorzystanie metod analizy krajobrazowej w analizie rasowo-etnicznej struktury ludności

4.1 Metryki krajobrazowe

Metryki krajobrazowe dostarczają informacje na temat przestrzennego rozkładu struktury rasowo-etnicznej. W celu dokonania analizy zostały obliczone 4 metryki krajobrazowe:
  1. • np - liczba płatów
  2. • lpi - stosunek powierzchni największego płata danego typu do powierzchni całego obszaru
  3. • PLAND - procent obszaru zajęty przez dany typ zróżnicowania
  4. • AI - poziom agregacji (0 – pełne rozproszenie, komórki tego samego typu nie graniczą ze sobą; 100 – jeden płat danego typu)

wayne_stb_1990$cls90 = recode(wayne_stb_1990$race_cls, "WL"= 1, "WM" = 2, "BL" = 3, "BM" = 4, "AL" = 5, "AM" = 6, "HL" = 7, "HM" = 8, "HD" = 9)

rast90 <- raster(wayne_stb_1990, res = 100)
# rast90

cls90 = fasterize(wayne_stb_1990, rast90, field = "cls90", fun="sum")

cls_color <- c("#FF8C00", "#FFD700", "#006400", "#32CD32", "#CD5555", "#FF6A6A", "#5D478B", "#9370DB", "#8F8F8F")

# plot(cls90, col = cls_color)


class_metr = list_lsm(level = "class")

lm90 = calculate_lsm(cls90, level = ("class"), what = c("lsm_c_np", "lsm_c_lpi",  "lsm_c_pland", "lsm_c_ai"))

lm_df90 = pivot_wider(lm90[, c("class", "metric", "value")], names_from = metric, values_from = value)

# lm_df90

cls_code90 = data.frame(cls90 = c("WL", "WM", "BL", "BM", "AL", "AM", "HL", "HM", "HD"), class = 1:9)
results90 = merge(cls_code90, lm_df90, by = "class", all.x = TRUE)


# write.csv(results00, "dane/landscape_metrics_2000.csv", row.names = FALSE)


np90 = lsm_l_np(cls90)
# np90

lpi90 = lsm_l_lpi(cls90)
# lpi90

plot(cls90, col = cls_color, main = "1990")

results90 %>%
  kbl() %>%
  kable_classic_2(full_width = F) %>%
  column_spec(1, background = cls_color)
class cls90 ai lpi np pland
1 WL 99.30027 66.1031995 24 70.3879671
2 WM 96.35258 2.9613283 21 9.1252923
3 BL 98.29305 12.4091972 5 13.8270339
4 BM 93.55324 1.9960991 14 5.6694715
5 AL NA NA NA NA
6 AM NA NA NA NA
7 HL NA NA NA NA
8 HM 93.38843 0.0431352 1 0.0431352
9 HD 93.29268 0.2969455 8 0.9470999

W 1990r. dominuje przeważająco ludność biała, zajmując łącznie 79,5% obszaru oraz mając najwięcej płatów, zaraz za nią plasuje się ludność czarna zajmując ok. 19,5%. Najmniej ma kolejno ludność o dużym zróżnicowaniu oraz Latynosi. Brak danych dla ludności azjatyckiej (lub brak takiej ludności). Agregacja jest bardzo wysoka - płaty mają znikome rozproszenie.

wayne_stb_2000$cls00 = recode(wayne_stb_2000$race_cls, "WL"= 1, "WM" = 2, "BL" = 3, "BM" = 4, "AL" = 5, "AM" = 6, "HL" = 7, "HM" = 8, "HD" = 9)

rast00 <- raster(wayne_stb_2000, res = 100)
# rast00

cls00 = fasterize(wayne_stb_2000, rast00, field = "cls00", fun="sum")

# plot(cls00, col = cls_color)



lm00 = calculate_lsm(cls00, level = ("class"), what = c("lsm_c_np", "lsm_c_lpi",  "lsm_c_pland", "lsm_c_ai"))

lm_df00 = pivot_wider(lm00[, c("class", "metric", "value")], names_from = metric, values_from = value)

# lm_df00

cls_code00 = data.frame(cls00 = c("WL", "WM", "BL", "BM", "AL", "AM", "HL", "HM", "HD"), class = 1:9)
results00 = merge(cls_code00, lm_df00, by = "class", all.x = TRUE)


# write.csv(results00, "dane/landscape_metrics_2000.csv", row.names = FALSE)


np00 = lsm_l_np(cls00)
# np00

lpi00 = lsm_l_lpi(cls00)
# lpi00

plot(cls00, col = cls_color, main = "2000")

results00 %>%
  kbl() %>%
  kable_classic_2(full_width = F) %>%
  column_spec(1, background = cls_color)
class cls00 ai lpi np pland
1 WL 98.96183 56.2333554 22 59.6566685
2 WM 96.96735 7.3461197 18 16.2726147
3 BL 98.32376 9.4272390 6 16.5301759
4 BM 92.87581 0.7939386 16 4.5992173
5 AL NA NA NA NA
6 AM NA NA NA NA
7 HL NA NA NA NA
8 HM 96.58839 0.7270477 1 0.7270477
9 HD 93.56692 0.7826859 10 2.2142759

W 2000r. zauważamy względem 1990r. spadek zajętego obszaru WL o 10,7 p.p.. oraz wzrost zajętego obszaru WM o 7,1 p.p. Również niewielkie zmiany dla ludności czarnej oraz ludności o dużym zróżnicowaniu. Nadal brak danych dla Azjatów. Zaś agregacja nadal na wysokim poziomie.

wayne_stb_2010$cls10 = recode(wayne_stb_2010$race_cls, "WL"= 1, "WM" = 2, "BL" = 3, "BM" = 4, "AL" = 5, "AM" = 6, "HL" = 7, "HM" = 8, "HD" = 9)

rast10 <- raster(wayne_stb_2010, res = 100)
# rast10

cls10 = fasterize(wayne_stb_2010, rast10, field = "cls10", fun="sum")

# plot(cls10, col = cls_color)


lm10 = calculate_lsm(cls10, level = ("class"), what = c("lsm_c_np", "lsm_c_lpi",  "lsm_c_pland", "lsm_c_ai"))

lm_df10 = pivot_wider(lm10[, c("class", "metric", "value")], names_from = metric, values_from = value)

# lm_df10

cls_code10 = data.frame(cls10 = c("WL", "WM", "BL", "BM", "AL", "AM", "HL", "HM", "HD"), class = 1:9)
results10 = merge(cls_code10, lm_df10, by = "class", all.x = TRUE)


# write.csv(results10, "dane/landscape_metrics_2010.csv", row.names = FALSE)


np10 = lsm_l_np(cls10)
# np10

lpi10 = lsm_l_lpi(cls10)
# lpi10

plot(cls10, col = cls_color, main = "2010")

results10 %>%
  kbl() %>%
  kable_classic_2(full_width = F) %>%
  column_spec(1, background = cls_color)
class cls10 ai lpi np pland
1 WL 98.53427 41.9562146 27 48.198947
2 WM 97.43675 13.1024868 20 23.559345
3 BL 98.69360 16.6620822 6 17.499156
4 BM 93.94016 0.9833585 17 5.008064
5 AL NA NA NA NA
6 AM NA NA NA NA
7 HL NA NA NA NA
8 HM 96.92421 1.2990585 1 1.299058
9 HD 94.11597 1.1665271 16 4.435428

W 2010r. względem 1990r. zauważamy jeszcze większe zmiany w obszarze zajętym przez ludność. WL traci łącznie 22,2 p.p., WM zyskuje 14,4 p.p. Ludność czarna zyskuje 3 p.p. Zwiększyła się liczba płatów, która wpłynęła na stosunek powierzchni największego płata do powierzchni obszaru. W tym przypadku wartości zmieniają się bardzo dla WL oraz WM, w mniejszym stopniu dla BL. Jednak nie ma to wpływu na poziom agregacji, który nadal jest bardzo wysoki.

wayne_stb_2020$cls20 = recode(wayne_stb_2020$race_cls, "WL"= 1, "WM" = 2, "BL" = 3, "BM" = 4, "AL" = 5, "AM" = 6, "HL" = 7, "HM" = 8, "HD" = 9)

rast20 <- raster(wayne_stb_2020, res = 100)
# rast20

cls20 = fasterize(wayne_stb_2020, rast20, field = "cls20", fun="sum")

# plot(cls20, col = cls_color)


lm20 = calculate_lsm(cls20, level = ("class"), what = c("lsm_c_np", "lsm_c_lpi",  "lsm_c_pland", "lsm_c_ai"))

lm_df20 = pivot_wider(lm20[, c("class", "metric", "value")], names_from = metric, values_from = value)

# lm_df20

cls_code20 = data.frame(cls20 = c("WL", "WM", "BL", "BM", "AL", "AM", "HL", "HM", "HD"), class = 1:9)
results20 = merge(cls_code20, lm_df20, by = "class", all.x = TRUE)


# write.csv(results20, "dane/landscape_metrics_2020.csv", row.names = FALSE)


np20 = lsm_l_np(cls20)
# np20

lpi20 = lsm_l_lpi(cls20)
# lpi20

plot(cls20, col = cls_color, main = "2020")

results20 %>%
  kbl() %>%
  kable_classic_2(full_width = F) %>%
  column_spec(1, background = cls_color)
class cls20 ai lpi np pland
1 WL 97.59520 14.2365062 29 30.4103475
2 WM 97.40495 19.1720534 19 32.9303210
3 BL 98.14948 14.9679299 5 15.7743714
4 BM 94.13289 1.7072805 22 7.1848314
5 AL NA NA NA NA
6 AM 97.01727 0.2106750 1 0.2106750
7 HL 91.57895 0.0962729 4 0.2806917
8 HM 94.97189 0.9802328 2 1.0264938
9 HD 94.61415 3.7533914 30 12.1822683

W 2020r. porównując do 1990r. dochodzi do największych zmian w udziale zajętego obszaru. WL traci aż 40 p.p., WM zyskuje 23,8 p.p., ludność czarna zyskuje 3,45 p.p. (1,8 p.p. względem 2000 roku oraz 0,45 p.p. względem 2010 roku). Liczba płatów zmnieniła się na korzyść ludości o dużym zróżnicowaniu HD - 30 względem 8 z 1990r. Wartości lpi jeszcze bardziej się zmniejszyły względem 2010r. choć niewiele wzrosło w przypadku HD oraz WM. Na dodatek pojawili się Azjaci o średnim zróżnicowaniu. Najmniejsza agregacja występuje u Latynosów o niskim zróżnicowaniu - świadczy to o tym, że część komórek tej klasy nie graniczy ze sobą.